In the current information age there are various forms of tables for visualizing data from a database. One such data visualization tool is a basic data table. A basic data table is comprised of rows and columns of information, which often times includes numerical calculations based on the combination of certain rows and columns of information. A basic EXCEL® data table 100a is illustrated in FIG. 1A which is populated with information relating to the sale of shirts. As shown in the table, there are four columns: “Region Sold In” 102, “Shirt Size” 104, “Units Sold” 106, and “Price per Unit” 108. There are four regions a user can input for each row in the region column 102: “North,” “South,” “East,” and “West.” There are four shirt sizes a user can input for each row under the shirt size column 104: “S,” “M,” “L,” “XL.” A significant problem with basic data tables, like the one shown in FIG. 1A, are that they do not allow a user to efficiently summarize desired data. For example, if a user wants summarize the revenue and number of units sold, organized based on region and shirt size, an individual would be required to manually calculate the desired data summary. A data summarization tool referred to as a “pivot table” is well known in the prior art and allows an individual to more efficiently summarize such data. Specifically, an example of a pivot table 100b created in EXCEL® based on the table from FIG. 1A is illustrated in FIG. 1B. As shown in FIG. 1B, a pivot table 100b is created summarizing the revenue and number of units sold based on region and shirt size. In the context of pivot tables, the columns that represent “annotation” data that can be used to subdivide data can be referred to as “dimensions.” In reference to FIG. 1A, the dimensions are the region column 102 and the shirt size column 104. Column 104 is a sub-dimension of column 102, because dimension 102 is higher in the dimension hierarchy than dimension 104. In other words, the shirts are organized based on region first, and then shirt size. Each dimension has corresponding values. For example, “North, “South,” “East” and “West” 114 are the values corresponding to the region dimension 102. “S,” “M,” “L,” and “XL,” 116 are the values corresponding to the size dimension 104. “Metrics” are columns of (generally numerical) “fact” data that can be used in aggregation functions. In reference to FIG. 1A, the metrics are the units sold column 106 and the price per unit column 108. As shown in FIG. 1B, the metrics corresponding to each dimension value in FIG. 1A are used to calculate the Sum of Units Sold 110 and Sum of Price Per Unit 112. The dimensions of FIG. 1A are used to organize the data in a particular manner. More specifically, the dimensions 102 and 104 are used to organize the sum of units sold 110 and sum of price per unit 112 by region and shirt size. While pivot tables such as those in EXCEL® are particularly useful when used in conjunction with tables containing many columns and rows of data, there is at least one inherent disadvantage to the EXCEL® pivot table: When a user is viewing a pivot table based on multiple dimensions and thousands of rows of information, the user may become overwhelmed by the sheer volume of the data. Yet another disadvantage of prior art pivot tables is that it is not simple and efficient to modify the pivot table dimensional hierarchy. For example, a user may have to regenerate the pivot table entirely to add additional dimensions to the data summary.
In the context of data summary tools hosted on servers, database size and query speed can become of particular concern at least because of: (1) the additional time that may be required to load the visual representation of the pivot tables because of bandwidth limitations; and (2) the fact that data summary tools hosted on servers tend to be based on large and complex databases. Web based data summarization tables (hereinafter “web tables”) are known in the prior art and operate in a manner similar to pivot tables in that they include dimensions and metrics which are used to summarize data for a user. Web tables may be hosted on a local server or remote server (e.g., one hosted on the Internet) and may be directly linked to an online data base that can be edited in real time by hundreds or even thousands of users. The web table may also be linked directly to another database and configured to summarize data in real-time based on the database. Consequently, the web table is capable of being constantly updated based on information entered by users in remote locations or by automation. Web tables often times include massive amounts of data, including tens of dimensions and thousands of rows of information. Consequently, the time required to query information in a web table, as well as the amount of time required to display that information to a user, can be significant. Additionally, the amount of data may very well overwhelm a user given the sheer volume of information being queried and displayed. A web table 200 is illustrated in FIG. 2, which includes two dimensions, Publisher 202 and Country 204, and metrics 206-212. As compared to the pivot tables in FIGS. 1A-B, there are significantly more rows and columns of information in the web table 200. While all of the data corresponding to sub-dimension 204 is displayed, a user may not be interested in the particular details outside of the top three revenue generating countries (i.e., “United States,” “Spain,” and “Netherlands”) for each dimension value 214a-214d. Additionally, the more data that is initially displayed in a web table, the longer it takes a user to query and display that information. Given the massive amount of data included in many web tables, they are often not generated in real time due to the querying and display restraints.
Consequently, there remains a need for a method, system, and apparatus for querying and displaying data in real-time in a manner that does not overwhelm the user or require a significant amount of querying and display time. There further remains a need to display data that is of particular importance to a user, while minimizing the amount of data displayed that is not of particular importance. There further remains a need for an individual to be able select specific rows of information in a web table and summarize the metrics corresponding to the selected rows of information.